Download Prepared Piano Sound Synthesis
A sound synthesis algorithm which simulates and extends the behaviour of the acoustic prepared piano is presented. The algorithm is based on a finite difference approximation to multiple stiff string vibration, including an excitation method (a hammer) as well as several connected preparation elements, modeled as lumped nonlinearities. Numerical issues and implementation details are discussed, and sound examples are presented.
Download Sliding with a constant Q
The linear frequency (constant-bandwidth) scale of the FFT has long been recognised as a disadvantage for audio processing. Long analysis windows are required for adequate low-frequency resolution, while small windows offer lower latency, better handling of transients, and reduced computation cost. A constant-Q form of analysis offers the possibility of increased low-frequency resolution for a given window size, this resolution being essential for many fundamental processing tasks such as pitch shifting. We consider the application of the Sliding Discrete Fourier Transform to a Constant-Q analysis. The increased flexibility of sliding allows for a variety of data alignments, and we produce the mathematical formulation of these. Windowing in the frequency domain introduces further complications. Finally we consider the implementation of the analysis on both serial and parallel computers.
Download Streaming Spectral Processing with Consumer-Level Graphics Processing Units
This paper describes the implementation of a streaming spectral processing system for realtime audio in a consumer-level onboard GPU (Graphics Processing Unit) attached to an off-the-shelf laptop computer. It explores the implementation of four processes: standard phase vocoder analysis and synthesis, additive synthesis and the sliding phase vocoder. These were developed under the CUDA development environment as plugins for the Csound 6 audio programming language. Following a detailed exposition of the GPU code, results of performance tests are discussed for each algorithm. They demonstrate that such a system is capable of realtime audio, even under the restrictions imposed by a limited GPU capability.